[INFO] cloning repository https://github.com/StanMarek/ghost-complete
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/StanMarek/ghost-complete" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FStanMarek%2Fghost-complete", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FStanMarek%2Fghost-complete'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 88f72044715411bdf5d96becec428f04bb8ed832
[INFO] testing StanMarek/ghost-complete against try#b8e88e5ddf5521a9f43ee3f62a702388c713e4bb for pr-155114
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FStanMarek%2Fghost-complete" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-7-tc2/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-7-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/StanMarek/ghost-complete
[INFO] finished tweaking git repo https://github.com/StanMarek/ghost-complete
[INFO] tweaked toml for git repo https://github.com/StanMarek/ghost-complete written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/StanMarek/ghost-complete on toolchain b8e88e5ddf5521a9f43ee3f62a702388c713e4bb
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/StanMarek/ghost-complete already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5192d5e9265cbaf6d1ab763469d288262c6987d5e6520e5ab86cf249cdf3c195
[INFO] running `Command { std: "docker" "start" "-a" "5192d5e9265cbaf6d1ab763469d288262c6987d5e6520e5ab86cf249cdf3c195", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5192d5e9265cbaf6d1ab763469d288262c6987d5e6520e5ab86cf249cdf3c195", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5192d5e9265cbaf6d1ab763469d288262c6987d5e6520e5ab86cf249cdf3c195", kill_on_drop: false }`
[INFO] [stdout] 5192d5e9265cbaf6d1ab763469d288262c6987d5e6520e5ab86cf249cdf3c195
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 91a405f376a4dba7b2b98fb8ed4685af3fc02fd0ac234add61e79c05e55b16ff
[INFO] running `Command { std: "docker" "start" "-a" "91a405f376a4dba7b2b98fb8ed4685af3fc02fd0ac234add61e79c05e55b16ff", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling winnow v1.0.1
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling compact_str v0.9.0
[INFO] [stderr]    Compiling nix v0.28.0
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling nucleo-matcher v0.3.1
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling gc-buffer v0.11.0 (/opt/rustwide/workdir/crates/gc-buffer)
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling vte v0.15.0
[INFO] [stderr]    Compiling line-clipping v0.3.7
[INFO] [stderr]    Compiling notify-types v2.1.0
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling gc-terminal v0.11.0 (/opt/rustwide/workdir/crates/gc-terminal)
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling ghost-complete v0.11.0 (/opt/rustwide/workdir/crates/ghost-complete)
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling serial2 v0.2.35
[INFO] [stderr]    Compiling inotify v0.11.1
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling nucleo v0.5.0
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling notify v8.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling gc-suggest v0.11.0 (/opt/rustwide/workdir/crates/gc-suggest)
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]    Compiling tokio v1.51.1
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling filedescriptor v0.8.3
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling portable-pty v0.9.0
[INFO] [stderr]    Compiling gc-parser v0.11.0 (/opt/rustwide/workdir/crates/gc-parser)
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling ratatui-core v0.1.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling ratatui-widgets v0.3.0
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.0
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling gc-config v0.11.0 (/opt/rustwide/workdir/crates/gc-config)
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling ratatui v0.30.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling gc-overlay v0.11.0 (/opt/rustwide/workdir/crates/gc-overlay)
[INFO] [stderr]    Compiling gc-pty v0.11.0 (/opt/rustwide/workdir/crates/gc-pty)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 10s
[INFO] running `Command { std: "docker" "inspect" "91a405f376a4dba7b2b98fb8ed4685af3fc02fd0ac234add61e79c05e55b16ff", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "91a405f376a4dba7b2b98fb8ed4685af3fc02fd0ac234add61e79c05e55b16ff", kill_on_drop: false }`
[INFO] [stdout] 91a405f376a4dba7b2b98fb8ed4685af3fc02fd0ac234add61e79c05e55b16ff
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] aaa7a6851cf2ec54f3133a4d243b69d5571789416d58445e9219c1990031c0e2
[INFO] running `Command { std: "docker" "start" "-a" "aaa7a6851cf2ec54f3133a4d243b69d5571789416d58445e9219c1990031c0e2", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]    Compiling page_size v0.6.0
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling gc-terminal v0.11.0 (/opt/rustwide/workdir/crates/gc-terminal)
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling filetime v0.2.27
[INFO] [stderr]    Compiling gc-buffer v0.11.0 (/opt/rustwide/workdir/crates/gc-buffer)
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling gc-config v0.11.0 (/opt/rustwide/workdir/crates/gc-config)
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]    Compiling criterion-plot v0.8.2
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling gc-suggest v0.11.0 (/opt/rustwide/workdir/crates/gc-suggest)
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling proptest v1.11.0
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling criterion v0.8.2
[INFO] [stderr]    Compiling gc-overlay v0.11.0 (/opt/rustwide/workdir/crates/gc-overlay)
[INFO] [stderr]    Compiling gc-pty v0.11.0 (/opt/rustwide/workdir/crates/gc-pty)
[INFO] [stderr]    Compiling ghost-complete v0.11.0 (/opt/rustwide/workdir/crates/ghost-complete)
[INFO] [stderr]    Compiling gc-parser v0.11.0 (/opt/rustwide/workdir/crates/gc-parser)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 58.09s
[INFO] running `Command { std: "docker" "inspect" "aaa7a6851cf2ec54f3133a4d243b69d5571789416d58445e9219c1990031c0e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "aaa7a6851cf2ec54f3133a4d243b69d5571789416d58445e9219c1990031c0e2", kill_on_drop: false }`
[INFO] [stdout] aaa7a6851cf2ec54f3133a4d243b69d5571789416d58445e9219c1990031c0e2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 73a0c2ad4922ecb45dd85c1b14695aa47c6496a197f340f5bcd90b306557525c
[INFO] running `Command { std: "docker" "start" "-a" "73a0c2ad4922ecb45dd85c1b14695aa47c6496a197f340f5bcd90b306557525c", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.42s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gc_buffer-88b4378ec636ac28)
[INFO] [stdout] 
[INFO] [stdout] running 82 tests
[INFO] [stdout] test context::tests::test_command_with_arg ... ok
[INFO] [stdout] test context::tests::test_command_with_space ... ok
[INFO] [stdout] test context::tests::test_after_semicolon ... ok
[INFO] [stdout] test context::tests::test_after_redirect ... ok
[INFO] [stdout] test context::tests::test_cursor_at_start ... ok
[INFO] [stdout] test context::tests::test_comment_not_counted_as_args ... ok
[INFO] [stdout] test context::tests::test_after_pipe ... ok
[INFO] [stdout] test context::tests::test_flag ... ok
[INFO] [stdout] test context::tests::test_flag_value ... ok
[INFO] [stdout] test context::tests::test_heredoc_sets_in_redirect ... ok
[INFO] [stdout] test context::tests::test_in_double_quotes ... ok
[INFO] [stdout] test context::tests::test_is_first_segment_false_after_and ... ok
[INFO] [stdout] test context::tests::test_is_first_segment_false_after_semicolon ... ok
[INFO] [stdout] test context::tests::test_is_first_segment_simple_command ... ok
[INFO] [stdout] test context::tests::test_long_flag ... ok
[INFO] [stdout] test context::tests::test_redirect_target_heredoc_not_counted_as_arg ... ok
[INFO] [stdout] test context::tests::test_redirect_target_not_counted_as_arg ... ok
[INFO] [stdout] test context::tests::test_simple_command_at_end ... ok
[INFO] [stdout] test context::tests::test_partial_arg ... ok
[INFO] [stdout] test tests::test_byte_to_char_mid_codepoint ... ok
[INFO] [stdout] test context::tests::test_subshell_pipe_stays_in_outer_context ... ok
[INFO] [stdout] test context::tests::test_subshell_not_split_into_args ... ok
[INFO] [stdout] test tests::test_byte_to_char_beyond_end ... ok
[INFO] [stdout] test tests::test_byte_to_char_multibyte ... ok
[INFO] [stdout] test context::tests::test_multibyte_mid_buffer ... ok
[INFO] [stdout] test context::tests::test_multibyte_char_does_not_panic ... ok
[INFO] [stdout] test context::tests::test_multibyte_full_word ... ok
[INFO] [stdout] test context::tests::test_cursor_beyond_end_clamps ... ok
[INFO] [stdout] test context::tests::test_fd_redirect_not_counted_as_arg ... ok
[INFO] [stdout] test context::tests::test_fd_redirect_2_ampersand_1_not_arg ... ok
[INFO] [stdout] test context::tests::test_multiple_pipes ... ok
[INFO] [stdout] test tests::test_char_to_byte_beyond_end ... ok
[INFO] [stdout] test context::tests::test_is_first_segment_false_after_pipe ... ok
[INFO] [stdout] test tests::test_byte_to_char_empty_string ... ok
[INFO] [stdout] test tests::test_char_to_byte_ascii ... ok
[INFO] [stdout] test tests::test_char_to_byte_multibyte ... ok
[INFO] [stdout] test tokenizer::tests::test_ampersand_redirect_append ... ok
[INFO] [stdout] test tokenizer::tests::test_ampersand_redirect_stdout_stderr ... ok
[INFO] [stdout] test tokenizer::tests::test_and_operator ... ok
[INFO] [stdout] test tokenizer::tests::test_append_redirect ... ok
[INFO] [stdout] test context::tests::test_is_first_segment_false_after_or ... ok
[INFO] [stdout] test tokenizer::tests::test_background_still_works ... ok
[INFO] [stdout] test tokenizer::tests::test_backslash_escape ... ok
[INFO] [stdout] test tokenizer::tests::test_command_substitution_incomplete ... ok
[INFO] [stdout] test tokenizer::tests::test_command_substitution_mid_word ... ok
[INFO] [stdout] test tokenizer::tests::test_command_substitution_nested ... ok
[INFO] [stdout] test tokenizer::tests::test_command_substitution_single_word ... ok
[INFO] [stdout] test tokenizer::tests::test_command_substitution_with_pipe_inside ... ok
[INFO] [stdout] test tokenizer::tests::test_command_substitution_with_quotes_inside ... ok
[INFO] [stdout] test tokenizer::tests::test_command_substitution_with_spaces ... ok
[INFO] [stdout] test tokenizer::tests::test_comment_at_start ... ok
[INFO] [stdout] test tokenizer::tests::test_comment_strips_trailing_words ... ok
[INFO] [stdout] test tokenizer::tests::test_dollar_without_paren_is_normal ... ok
[INFO] [stdout] test tokenizer::tests::test_double_quotes ... ok
[INFO] [stdout] test tokenizer::tests::test_fd_redirect_2_ampersand_1 ... ok
[INFO] [stdout] test tokenizer::tests::test_fd_redirect_multi_digit_stripped ... ok
[INFO] [stdout] test context::tests::test_is_first_segment_true_empty ... ok
[INFO] [stdout] test tokenizer::tests::test_fd_redirect_stderr ... ok
[INFO] [stdout] test tokenizer::tests::test_empty_input ... ok
[INFO] [stdout] test tokenizer::tests::test_escape_in_double_quotes ... ok
[INFO] [stdout] test tokenizer::tests::test_fd_redirect_stderr_append ... ok
[INFO] [stdout] test tokenizer::tests::test_fd_redirect_stdin ... ok
[INFO] [stdout] test tokenizer::tests::test_fd_redirect_with_space_keeps_digit_as_arg ... ok
[INFO] [stdout] test tokenizer::tests::test_hash_inside_double_quotes_not_comment ... ok
[INFO] [stdout] test tokenizer::tests::test_hash_inside_single_quotes_not_comment ... ok
[INFO] [stdout] test tokenizer::tests::test_hash_mid_word_not_comment ... ok
[INFO] [stdout] test tokenizer::tests::test_here_string ... ok
[INFO] [stdout] test tokenizer::tests::test_heredoc ... ok
[INFO] [stdout] test tokenizer::tests::test_heredoc_not_two_redirect_in ... ok
[INFO] [stdout] test tokenizer::tests::test_heredoc_tab_strip_variant ... ok
[INFO] [stdout] test tokenizer::tests::test_heredoc_with_redirect ... ok
[INFO] [stdout] test tokenizer::tests::test_incomplete_double_quote ... ok
[INFO] [stdout] test tokenizer::tests::test_incomplete_single_quote ... ok
[INFO] [stdout] test tokenizer::tests::test_multi_digit_fd_stripped ... ok
[INFO] [stdout] test tokenizer::tests::test_only_spaces ... ok
[INFO] [stdout] test tokenizer::tests::test_or_operator ... ok
[INFO] [stdout] test tokenizer::tests::test_pipe ... ok
[INFO] [stdout] test tokenizer::tests::test_redirect ... ok
[INFO] [stdout] test tokenizer::tests::test_semicolon ... ok
[INFO] [stdout] test tokenizer::tests::test_simple_command ... ok
[INFO] [stdout] test tokenizer::tests::test_single_quotes ... ok
[INFO] [stdout] test tokenizer::tests::test_single_redirect_in_unchanged ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 82 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gc_config-5312b85ea268b1a0)
[INFO] [stdout] 
[INFO] [stdout] running 60 tests
[INFO] [stdout] test tests::render_block_ms_default_is_80 ... ok
[INFO] [stdout] test tests::test_auto_trigger_false_from_toml ... ok
[INFO] [stdout] test tests::render_block_ms_zero_is_allowed ... ok
[INFO] [stdout] test tests::test_auto_trigger_defaults_to_true ... ok
[INFO] [stdout] test tests::test_default_config_matches_hardcoded ... ok
[INFO] [stdout] test tests::test_clamp_max_visible_over_limit ... ok
[INFO] [stdout] test tests::test_diff_unknown_keys_flat_top_level ... ok
[INFO] [stdout] test tests::test_diff_unknown_keys_deep_nested ... ok
[INFO] [stdout] test tests::test_clamp_max_results_zero_to_default ... ok
[INFO] [stdout] test tests::test_clamp_max_visible_zero_to_default ... ok
[INFO] [stdout] test tests::test_diff_unknown_keys_all_known ... ok
[INFO] [stdout] test tests::test_config_dir_returns_none_yields_default ... ok
[INFO] [stdout] test tests::test_clamp_at_exact_boundary ... ok
[INFO] [stdout] test tests::test_delay_ms_zero_is_allowed ... ok
[INFO] [stdout] test tests::test_diff_unknown_keys_nested_table ... ok
[INFO] [stdout] test tests::test_clamp_max_results_over_limit ... ok
[INFO] [stdout] test tests::test_experimental_defaults_to_off ... ok
[INFO] [stdout] test tests::test_feedback_theme_preset_defaults ... ok
[INFO] [stdout] test tests::test_experimental_missing_uses_default ... ok
[INFO] [stdout] test tests::test_experimental_multi_terminal_enabled ... ok
[INFO] [stdout] test tests::test_generator_timeout_ms_default ... ok
[INFO] [stdout] test tests::test_full_theme_config ... ok
[INFO] [stdout] test tests::test_explicit_empty_string_distinct_from_none ... ok
[INFO] [stdout] test tests::test_generator_timeout_ms_missing_is_default ... ok
[INFO] [stdout] test tests::test_generator_timeout_ms_parse ... ok
[INFO] [stdout] test tests::test_legacy_providers_history_field_ignored ... ok
[INFO] [stdout] test tests::test_missing_file_returns_default ... ok
[INFO] [stdout] test tests::test_full_config_parses ... ok
[INFO] [stdout] test tests::test_feedback_dismiss_ms_zero_is_allowed ... ok
[INFO] [stdout] test tests::test_load_with_unknown_key_succeeds ... ok
[INFO] [stdout] test tests::test_parse_partial_toml ... ok
[INFO] [stdout] test tests::test_load_accepts_valid_theme_style ... ok
[INFO] [stdout] test tests::test_partial_theme_new_fields ... ok
[INFO] [stdout] test tests::test_missing_file_returns_default_via_notfound ... ok
[INFO] [stdout] test tests::test_no_clamp_when_within_bounds ... ok
[INFO] [stdout] test tests::test_removed_popup_fields_ignored ... ok
[INFO] [stdout] test tests::test_resolve_material_darker_preset ... ok
[INFO] [stdout] test tests::test_resolve_light_preset ... ok
[INFO] [stdout] test tests::test_resolve_no_preset_uses_dark ... ok
[INFO] [stdout] test tests::test_removed_suggest_fields_ignored ... ok
[INFO] [stdout] test tests::test_popup_feedback_knobs_parse_and_clamp ... ok
[INFO] [stdout] test tests::test_resolve_catppuccin_preset ... ok
[INFO] [stdout] test tests::test_partial_theme_override ... ok
[INFO] [stdout] test tests::test_resolve_preset_with_field_override ... ok
[INFO] [stdout] test tests::test_theme_new_field_defaults ... ok
[INFO] [stdout] test tests::test_validate_accepts_all_known_presets ... ok
[INFO] [stdout] test tests::test_validate_accepts_explicit_empty_string ... ok
[INFO] [stdout] test tests::test_validate_all_valid_tokens ... ok
[INFO] [stdout] test tests::test_validate_empty_theme_ok ... ok
[INFO] [stdout] test tests::test_validate_rejects_bad_palette_index ... ok
[INFO] [stdout] test tests::test_load_rejects_invalid_theme_style ... ok
[INFO] [stdout] test tests::test_validate_rejects_bad_hex_length ... ok
[INFO] [stdout] test tests::test_malformed_toml_returns_error ... ok
[INFO] [stdout] test tests::test_resolve_invalid_preset_errors ... ok
[INFO] [stdout] test tests::test_validate_rejects_bad_hex_digits ... ok
[INFO] [stdout] test tests::test_validate_rejects_unknown_preset ... ok
[INFO] [stdout] test tests::test_validate_rejects_unknown_token ... ok
[INFO] [stdout] test tests::test_feedback_theme_overrides_resolve_and_validate ... ok
[INFO] [stdout] test tests::test_partial_keybindings_override ... ok
[INFO] [stdout] test tests::render_block_ms_clamps_above_300_during_normalize ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 60 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gc_overlay-a21cbbd2866a9dde)
[INFO] [stdout] 
[INFO] [stdout] running 171 tests
[INFO] [stdout] test ansi::tests::test_end_sync ... ok
[INFO] [stdout] test ansi::tests::test_move_to_arbitrary ... ok
[INFO] [stdout] test ansi::tests::test_move_to_one_indexed ... ok
[INFO] [stdout] test ansi::tests::test_begin_sync ... ok
[INFO] [stdout] test ansi::tests::test_reset ... ok
[INFO] [stdout] test ansi::tests::test_reverse_video ... ok
[INFO] [stdout] test frame::tests::content_row_basic_with_description ... ok
[INFO] [stdout] test frame::tests::content_row_filepath_basename ... ok
[INFO] [stdout] test frame::tests::content_row_match_highlighting ... ok
[INFO] [stdout] test frame::tests::content_row_no_description_narrow ... ok
[INFO] [stdout] test frame::tests::content_row_scrollbar_cell ... ok
[INFO] [stdout] test frame::tests::frame_border_width_matches_content ... ok
[INFO] [stdout] test ansi::tests::test_save_restore_cursor ... ok
[INFO] [stdout] test frame::tests::content_row_selected_desc_uses_plain ... ok
[INFO] [stdout] test frame::tests::frame_empty_returns_none ... ok
[INFO] [stdout] test frame::tests::frame_scroll_offset_slices_correctly ... ok
[INFO] [stdout] test frame::tests::segment_cjk_width_counting ... ok
[INFO] [stdout] test frame::tests::frame_with_borders ... ok
[INFO] [stdout] test frame::tests::segment_consecutive_highlights_merge ... ok
[INFO] [stdout] test frame::tests::frame_with_loading ... ok
[INFO] [stdout] test frame::tests::frame_with_scrollbar ... ok
[INFO] [stdout] test frame::tests::segment_no_highlights ... ok
[INFO] [stdout] test frame::tests::frame_with_selection ... ok
[INFO] [stdout] test frame::tests::segment_truncation_at_max_cols ... ok
[INFO] [stdout] test frame::tests::segment_with_highlights ... ok
[INFO] [stdout] test frame::tests::frame_no_scrollbar_when_fits ... ok
[INFO] [stdout] test frame::tests::segment_zero_max_cols ... ok
[INFO] [stdout] test frame::tests::frame_zero_height_returns_none ... ok
[INFO] [stdout] test frame::tests::segment_empty_text ... ok
[INFO] [stdout] test layout::tests::test_exact_min_width_terminal_renders ... ok
[INFO] [stdout] test layout::tests::test_custom_max_visible ... ok
[INFO] [stdout] test layout::tests::test_directory_width_uses_basename ... ok
[INFO] [stdout] test layout::tests::test_gutter_cols_accounts_for_nerd_font_width ... ok
[INFO] [stdout] test layout::tests::test_filepath_no_slash_unchanged ... ok
[INFO] [stdout] test layout::tests::test_filepath_width_uses_basename ... ok
[INFO] [stdout] test layout::tests::test_height_capped_at_max_visible ... ok
[INFO] [stdout] test frame::tests::frame_without_borders ... ok
[INFO] [stdout] test layout::tests::test_narrow_terminal_suppressed ... ok
[INFO] [stdout] test layout::tests::test_width_clamped_max ... ok
[INFO] [stdout] test layout::tests::test_non_ascii_filepath_width ... ok
[INFO] [stdout] test render::tests::format_item_sanitizes_esc_in_text ... ok
[INFO] [stdout] test layout::tests::test_non_ascii_text_width ... ok
[INFO] [stdout] test render::tests::kind_icon_returns_documented_glyph_for_enum_value ... ok
[INFO] [stdout] test layout::tests::test_non_ascii_description_width ... ok
[INFO] [stdout] test layout::tests::test_popup_always_below_even_near_bottom ... ok
[INFO] [stdout] test layout::tests::test_popup_at_top_left ... ok
[INFO] [stdout] test layout::tests::test_popup_below_cursor ... ok
[INFO] [stdout] test layout::tests::test_popup_shifts_left ... ok
[INFO] [stdout] test layout::tests::test_very_narrow_terminal_suppressed ... ok
[INFO] [stdout] test render::tests::test_clear_writes_spaces ... ok
[INFO] [stdout] test render::tests::sanitize_preserves_normal_text ... ok
[INFO] [stdout] test render::tests::sanitize_preserves_unicode ... ok
[INFO] [stdout] test render::tests::test_empty_item_text_style_no_extra_escapes ... ok
[INFO] [stdout] test render::tests::sanitize_strips_csi_sequence ... ok
[INFO] [stdout] test render::tests::sanitize_strips_esc_from_text ... ok
[INFO] [stdout] test render::tests::test_feedback_empty_and_error_labels ... ok
[INFO] [stdout] test render::tests::sanitize_strips_osc_sequence ... ok
[INFO] [stdout] test render::tests::test_clear_correct_dimensions ... ok
[INFO] [stdout] test render::tests::test_border_characters_present ... ok
[INFO] [stdout] test render::tests::test_clear_pre_render_buffer_skips_sync ... ok
[INFO] [stdout] test render::tests::format_item_sanitizes_esc_in_description ... ok
[INFO] [stdout] test render::tests::test_feedback_loading_shows_spinner_frame ... ok
[INFO] [stdout] test layout::tests::test_width_clamped_min ... ok
[INFO] [stdout] test render::tests::test_feedback_only_prior_deficit_prevents_rescroll ... ok
[INFO] [stdout] test render::tests::test_format_item_no_slash_shows_full_name ... ok
[INFO] [stdout] test render::tests::test_format_item_shows_kind_gutter ... ok
[INFO] [stdout] test render::tests::test_highlight_filepath_basename_offset ... ok
[INFO] [stdout] test render::tests::test_format_item_shows_only_filename_for_directory ... ok
[INFO] [stdout] test render::tests::test_format_item_shows_only_filename_for_file ... ok
[INFO] [stdout] test render::tests::test_format_item_truncates_description ... ok
[INFO] [stdout] test render::tests::test_highlight_indices_in_stripped_prefix_skipped ... ok
[INFO] [stdout] test render::tests::test_format_item_truncates_long_text ... ok
[INFO] [stdout] test render::tests::test_highlight_matched_chars ... ok
[INFO] [stdout] test render::tests::test_highlight_consecutive_single_span ... ok
[INFO] [stdout] test render::tests::test_highlight_on_selected_row ... ok
[INFO] [stdout] test render::tests::test_layout_no_borders_width ... ok
[INFO] [stdout] test render::tests::test_loading_false_no_indicator ... ok
[INFO] [stdout] test render::tests::test_loading_label_uses_ellipsis_when_content_width_narrow ... ok
[INFO] [stdout] test render::tests::test_loading_label_uses_ellipsis_when_spinner_disabled ... ok
[INFO] [stdout] test render::tests::test_loading_no_borders_height ... ok
[INFO] [stdout] test render::tests::test_loading_bordered_deficit_accounts_for_displaced_border ... ok
[INFO] [stdout] test render::tests::test_narrow_terminal_emits_zero_bytes ... ok
[INFO] [stdout] test render::tests::test_loading_true_shows_indicator ... ok
[INFO] [stdout] test render::tests::test_no_indices_no_highlight ... ok
[INFO] [stdout] test render::tests::test_no_scrollbar_when_items_fit ... ok
[INFO] [stdout] test render::tests::test_non_selected_row_has_item_text_style ... ok
[INFO] [stdout] test render::tests::test_parse_style_empty ... ok
[INFO] [stdout] test render::tests::test_feedback_label_clips_to_content_width ... ok
[INFO] [stdout] test render::tests::test_parse_style_fg_color ... ok
[INFO] [stdout] test render::tests::test_parse_style_hex_bg ... ok
[INFO] [stdout] test render::tests::test_parse_style_hex_case_insensitive ... ok
[INFO] [stdout] test render::tests::test_parse_style_hex_fg ... ok
[INFO] [stdout] test render::tests::test_parse_style_hex_mixed_with_256 ... ok
[INFO] [stdout] test render::tests::test_parse_style_invalid_fg_number ... ok
[INFO] [stdout] test render::tests::test_parse_style_invalid_fg_overflow ... ok
[INFO] [stdout] test render::tests::test_highlight_non_ascii_path_offset ... ok
[INFO] [stdout] test render::tests::test_parse_style_invalid_token ... ok
[INFO] [stdout] test render::tests::test_parse_style_bg_bold ... ok
[INFO] [stdout] test render::tests::test_parse_style_underline ... ok
[INFO] [stdout] test render::tests::test_render_adj_row_never_underflows ... ok
[INFO] [stdout] test render::tests::test_parse_style_hex_invalid_chars ... ok
[INFO] [stdout] test render::tests::test_parse_style_hex_too_short ... ok
[INFO] [stdout] test render::tests::test_highlight_indices_beyond_truncation_ignored ... ok
[INFO] [stdout] test render::tests::test_parse_style_hex_missing_hash ... ok
[INFO] [stdout] test render::tests::test_parse_style_dim_bold ... ok
[INFO] [stdout] test render::tests::test_render_decsc_after_scroll_not_before ... ok
[INFO] [stdout] test render::tests::test_render_discards_pathological_prior_deficit_and_recomputes_fresh ... ok
[INFO] [stdout] test render::tests::test_render_empty_no_feedback_preserves_prior_deficit ... ok
[INFO] [stdout] test render::tests::test_render_discards_prior_deficit_equal_to_cursor_row ... ok
[INFO] [stdout] test render::tests::test_render_indicator_row_is_small ... ok
[INFO] [stdout] test render::tests::test_render_incremental_deficit ... ok
[INFO] [stdout] test render::tests::test_parse_style_reverse ... ok
[INFO] [stdout] test render::tests::test_render_empty_suggestions ... ok
[INFO] [stdout] test render::tests::test_render_no_borders_height ... ok
[INFO] [stdout] test render::tests::test_render_no_scroll_when_room_below ... ok
[INFO] [stdout] test render::tests::test_render_no_borders_no_border_chars ... ok
[INFO] [stdout] test render::tests::test_render_positions_at_layout ... ok
[INFO] [stdout] test render::tests::test_render_pre_render_buffer_skips_sync ... ok
[INFO] [stdout] test render::tests::test_render_pins_popup_to_cursor_when_prior_deficit_exceeds_cursor_row ... ok
[INFO] [stdout] test render::tests::test_render_produces_sync_wrapper ... ok
[INFO] [stdout] test render::tests::test_render_prior_deficit_prevents_rescroll ... ok
[INFO] [stdout] test render::tests::test_render_saves_restores_cursor ... ok
[INFO] [stdout] test render::tests::test_render_small_terminal_caps_height ... ok
[INFO] [stdout] test render::tests::test_render_with_scroll_offset ... ok
[INFO] [stdout] test render::tests::test_scrollbar_item_text_width_reduced ... ok
[INFO] [stdout] test render::tests::test_render_scroll_when_deficit_needed ... ok
[INFO] [stdout] test render::tests::test_scrollbar_visible_when_items_exceed_max_visible ... ok
[INFO] [stdout] test render::tests::test_selected_item_has_reverse_video ... ok
[INFO] [stdout] test render::tests::write_highlighted_text_honors_match_indices_when_source_has_control_chars ... ok
[INFO] [stdout] test types::tests::test_end_empty_list_is_noop ... ok
[INFO] [stdout] test types::tests::test_end_keeps_invariant ... ok
[INFO] [stdout] test render::tests::test_scrollbar_thumb_at_top_when_scroll_zero ... ok
[INFO] [stdout] test render::tests::test_scrollbar_selected_row_uses_selected_style ... ok
[INFO] [stdout] test render::tests::test_scrollbar_thumb_at_bottom_when_scrolled_to_end ... ok
[INFO] [stdout] test render::tests::test_selected_row_no_item_text_style ... ok
[INFO] [stdout] test types::tests::test_custom_max_visible ... ok
[INFO] [stdout] test types::tests::test_end_from_none_selects_last ... ok
[INFO] [stdout] test types::tests::test_end_short_list_no_scroll ... ok
[INFO] [stdout] test types::tests::test_home_from_middle_resets_scroll ... ok
[INFO] [stdout] test types::tests::test_home_from_none_selects_zero ... ok
[INFO] [stdout] test types::tests::test_move_down_at_end_stays ... ok
[INFO] [stdout] test types::tests::test_home_empty_list_is_noop ... ok
[INFO] [stdout] test types::tests::test_move_down_from_none_selects_first ... ok
[INFO] [stdout] test types::tests::test_move_up_at_none_stays_none ... ok
[INFO] [stdout] test types::tests::test_move_down_increments ... ok
[INFO] [stdout] test types::tests::test_move_up_at_zero_deselects ... ok
[INFO] [stdout] test types::tests::test_move_up_decrements ... ok
[INFO] [stdout] test types::tests::test_page_down_at_last_after_viewport_shrink_keeps_selected_visible ... ok
[INFO] [stdout] test types::tests::test_move_up_at_zero_resets_scroll_offset ... ok
[INFO] [stdout] test types::tests::test_page_down_at_last_is_noop ... ok
[INFO] [stdout] test types::tests::test_page_down_clamps_at_last ... ok
[INFO] [stdout] test types::tests::test_page_down_empty_list_clears_stale_state ... ok
[INFO] [stdout] test types::tests::test_page_down_empty_list_is_noop ... ok
[INFO] [stdout] test types::tests::test_page_down_from_none_selects_zero ... ok
[INFO] [stdout] test types::tests::test_page_down_full_step_scrolls_viewport ... ok
[INFO] [stdout] test types::tests::test_page_down_keeps_invariant ... ok
[INFO] [stdout] test types::tests::test_page_down_short_list_no_viewport_change ... ok
[INFO] [stdout] test types::tests::test_page_up_at_zero_deselects ... ok
[INFO] [stdout] test types::tests::test_page_up_below_max_visible_clamps_to_zero ... ok
[INFO] [stdout] test types::tests::test_page_up_from_none_is_noop ... ok
[INFO] [stdout] test types::tests::test_page_up_full_page_step ... ok
[INFO] [stdout] test types::tests::test_page_up_keeps_invariant ... ok
[INFO] [stdout] test types::tests::test_reset ... ok
[INFO] [stdout] test types::tests::test_scroll_offset_on_move_down ... ok
[INFO] [stdout] test types::tests::test_scroll_offset_on_move_up ... ok
[INFO] [stdout] test util::tests::deep_path ... ok
[INFO] [stdout] test util::tests::directory_with_trailing_slash ... ok
[INFO] [stdout] test util::tests::filepath_no_slash ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gc_parser-3c0830b9ba15e0fc)
[INFO] [stdout] test util::tests::filepath_returns_basename ... ok
[INFO] [stdout] test util::tests::non_ascii_filepath ... ok
[INFO] [stdout] test util::tests::plain_command_returns_full_text ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 171 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 138 tests
[INFO] [stdout] test performer::tests::multiple_csi_6n_each_enqueue ... ok
[INFO] [stdout] test performer::tests::osc7770_legacy_truncates_on_semicolon_documented ... ok
[INFO] [stdout] test performer::tests::csi_5n_does_not_enqueue ... ok
[INFO] [stdout] test performer::tests::csi_private_6n_does_not_enqueue ... ok
[INFO] [stdout] test performer::tests::osc7770_legacy_dispatch_continues_after_warn_flag_flips ... ok
[INFO] [stdout] test performer::tests::csi_6n_enqueues_shell ... ok
[INFO] [stdout] test performer::tests::osc7772_does_not_disturb_terminal_cursor ... ok
[INFO] [stdout] test performer::tests::osc7772_cursor_zero_valid ... ok
[INFO] [stdout] test performer::tests::osc7772_regression_pin_canonical_bug_witness ... ok
[INFO] [stdout] test performer::tests::osc7772_rejects_invalid_utf8_after_decode ... ok
[INFO] [stdout] test performer::tests::osc7772_cursor_clamped_to_buffer_length ... ok
[INFO] [stdout] test performer::tests::osc7772_rejects_missing_params ... ok
[INFO] [stdout] test performer::tests::osc7772_rejects_invalid_percent_escape ... ok
[INFO] [stdout] test performer::tests::osc7772_rejects_negative_cursor ... ok
[INFO] [stdout] test performer::tests::osc7772_rejects_non_numeric_cursor ... ok
[INFO] [stdout] test performer::tests::osc7772_roundtrips_bel ... ok
[INFO] [stdout] test performer::tests::osc7772_roundtrips_embedded_st ... ok
[INFO] [stdout] test performer::tests::osc7772_roundtrips_empty ... ok
[INFO] [stdout] test performer::tests::osc7772_rejects_truncated_percent ... ok
[INFO] [stdout] test performer::tests::osc7772_security_no_nested_osc7_dispatch ... ok
[INFO] [stdout] test performer::tests::osc7772_roundtrips_esc ... ok
[INFO] [stdout] test performer::tests::osc7772_roundtrips_utf8_cjk ... ok
[INFO] [stdout] test performer::tests::percent_decode_buffer_single_escape ... ok
[INFO] [stdout] test performer::tests::percent_decode_buffer_empty ... ok
[INFO] [stdout] test performer::tests::osc7772_roundtrips_nul ... ok
[INFO] [stdout] test performer::tests::percent_decode_buffer_truncated_rejected ... ok
[INFO] [stdout] test performer::tests::osc7772_roundtrips_semicolon ... ok
[INFO] [stdout] test performer::tests::percent_decode_buffer_invalid_hex_rejected ... ok
[INFO] [stdout] test performer::tests::test_csi_cpl ... ok
[INFO] [stdout] test performer::tests::percent_decode_buffer_mixed ... ok
[INFO] [stdout] test performer::tests::osc7772_roundtrips_already_encoded_alphabet ... ok
[INFO] [stdout] test performer::tests::test_backspace ... ok
[INFO] [stdout] test performer::tests::test_csi_cup ... ok
[INFO] [stdout] test performer::tests::test_backspace_saturates ... ok
[INFO] [stdout] test performer::tests::test_buffer_cleared_on_command_exec ... ok
[INFO] [stdout] test performer::tests::test_csi_cursor_back ... ok
[INFO] [stdout] test performer::tests::test_csi_cursor_down ... ok
[INFO] [stdout] test performer::tests::test_cr_resets_col ... ok
[INFO] [stdout] test performer::tests::test_csi_cnl ... ok
[INFO] [stdout] test performer::tests::test_csi_cursor_forward ... ok
[INFO] [stdout] test performer::tests::test_csi_cursor_up ... ok
[INFO] [stdout] test performer::tests::test_csi_ed_all_modes_mark_display_dirty ... ok
[INFO] [stdout] test performer::tests::test_csi_ed_clear_screen ... ok
[INFO] [stdout] test performer::tests::test_csi_ignore_flag_honored_on_param_overflow ... ok
[INFO] [stdout] test performer::tests::test_csi_insert_delete_and_erase_chars_mark_display_dirty_without_moving_cursor ... ok
[INFO] [stdout] test performer::tests::osc7772_roundtrips_long_8k ... ok
[INFO] [stdout] test performer::tests::test_csi_vpa ... ok
[INFO] [stdout] test performer::tests::test_cursor_movement_marks_display_dirty ... ok
[INFO] [stdout] test performer::tests::test_csi_cup_defaults ... ok
[INFO] [stdout] test performer::tests::test_csi_cha ... ok
[INFO] [stdout] test performer::tests::percent_decode_buffer_no_encoding ... ok
[INFO] [stdout] test performer::tests::test_decsc_decrc ... ok
[INFO] [stdout] test performer::tests::test_lf_advances_row ... ok
[INFO] [stdout] test performer::tests::test_csi_insert_and_delete_lines_mark_display_dirty_without_moving_cursor ... ok
[INFO] [stdout] test performer::tests::test_osc133_prompt_a ... ok
[INFO] [stdout] test performer::tests::test_osc7770_buffer ... ok
[INFO] [stdout] test performer::tests::test_csi_sd_keeps_cursor_and_moves_prompt_row_down ... ok
[INFO] [stdout] test performer::tests::test_osc7770_cursor_clamped_to_buffer_length ... ok
[INFO] [stdout] test performer::tests::test_osc7770_cursor_exact_length_not_clamped ... ok
[INFO] [stdout] test performer::tests::test_csi_su_tracks_scroll_without_moving_cursor ... ok
[INFO] [stdout] test performer::tests::test_csi_el_all_modes_mark_display_dirty_without_moving_cursor ... ok
[INFO] [stdout] test performer::tests::test_line_wrap ... ok
[INFO] [stdout] test performer::tests::test_osc133_a_then_osc7771_c ... ok
[INFO] [stdout] test performer::tests::test_osc133_prompt_c ... ok
[INFO] [stdout] test performer::tests::test_osc7770_empty ... ok
[INFO] [stdout] test performer::tests::test_osc7770_invalid_utf8_rejected ... ok
[INFO] [stdout] test performer::tests::test_osc7770_with_spaces ... ok
[INFO] [stdout] test performer::tests::test_osc7770_sets_buffer_dirty ... ok
[INFO] [stdout] test performer::tests::test_osc7771_a_then_osc133_c ... ok
[INFO] [stdout] test performer::tests::test_osc7771_clears_buffer_on_c ... ok
[INFO] [stdout] test performer::tests::test_osc7771_prompt_a ... ok
[INFO] [stdout] test performer::tests::test_osc7771_unknown_subcommand_no_state_change ... ok
[INFO] [stdout] test performer::tests::test_osc7_cwd ... ok
[INFO] [stdout] test performer::tests::test_parse_osc7_path ... ok
[INFO] [stdout] test performer::tests::test_osc7_same_path_not_dirty ... ok
[INFO] [stdout] test performer::tests::test_osc7_sets_cwd_dirty ... ok
[INFO] [stdout] test performer::tests::test_osc7771_prompt_c ... ok
[INFO] [stdout] test performer::tests::test_parse_osc7_path_percent_encoding ... ok
[INFO] [stdout] test performer::tests::test_osc7770_valid_utf8_accepted ... ok
[INFO] [stdout] test performer::tests::test_parse_osc7_path_invalid ... ok
[INFO] [stdout] test performer::tests::test_parse_osc7_path_traversal_percent_encoded_rejected ... ok
[INFO] [stdout] test performer::tests::test_percent_decode ... ok
[INFO] [stdout] test performer::tests::test_parse_osc7_path_traversal_literal_dotdot_rejected ... ok
[INFO] [stdout] test performer::tests::test_osc7_cwd_with_spaces ... ok
[INFO] [stdout] test performer::tests::test_percent_decode_basic ... ok
[INFO] [stdout] test performer::tests::test_parse_osc7_path_dot_segment_rejected ... ok
[INFO] [stdout] test performer::tests::test_parse_osc7_path_traversal_past_root_rejected ... ok
[INFO] [stdout] test performer::tests::test_osc7771_short_params_no_crash ... ok
[INFO] [stdout] test performer::tests::test_percent_decode_preserves_malformed ... ok
[INFO] [stdout] test performer::tests::test_percent_decode_truncated ... ok
[INFO] [stdout] test performer::tests::test_percent_decode_literal_percent ... ok
[INFO] [stdout] test performer::tests::test_predict_command_buffer_clamps_cursor ... ok
[INFO] [stdout] test performer::tests::test_print_advances_cursor ... ok
[INFO] [stdout] test performer::tests::test_print_cjk_exact_fit_no_early_wrap ... ok
[INFO] [stdout] test performer::tests::test_percent_decode_non_utf8_bytes ... ok
[INFO] [stdout] test performer::tests::test_print_cjk_wrap_in_3_col_terminal ... ok
[INFO] [stdout] test performer::tests::test_print_cjk_wraps_correctly ... ok
[INFO] [stdout] test performer::tests::test_private_decawm_honored_among_multiple_private_params ... ok
[INFO] [stdout] test performer::tests::test_private_decawm_reset_disables_autowrap ... ok
[INFO] [stdout] test performer::tests::test_print_mixed_ascii_cjk ... ok
[INFO] [stdout] test performer::tests::test_private_decawm_set_reenables_autowrap_after_reset ... ok
[INFO] [stdout] test performer::tests::test_reverse_index ... ok
[INFO] [stdout] test performer::tests::test_percent_decode_utf8 ... ok
[INFO] [stdout] test performer::tests::test_tab_from_zero ... ok
[INFO] [stdout] test performer::tests::test_print_cjk_advances_two_cols ... ok
[INFO] [stdout] test performer::tests::test_take_buffer_dirty_clears_flag ... ok
[INFO] [stdout] test performer::tests::test_tab_stop ... ok
[INFO] [stdout] test performer::tests::test_printable_marks_display_dirty_but_osc7772_does_not ... ok
[INFO] [stdout] test performer::tests::test_take_cwd_dirty_clears_flag ... ok
[INFO] [stdout] test performer::tests::test_validate_osc7_cwd_relative_rejected ... ok
[INFO] [stdout] test performer::tests::test_update_dimensions ... ok
[INFO] [stdout] test performer::tests::test_validate_osc7_cwd_absolute ... ok
[INFO] [stdout] test performer::tests::test_validate_osc7_cwd_traversal_rejected ... ok
[INFO] [stdout] test state::tests::claim_returns_none_when_empty ... ok
[INFO] [stdout] test state::tests::enqueue_returns_unique_tokens ... ok
[INFO] [stdout] test state::tests::enqueue_then_claim_returns_owner ... ok
[INFO] [stdout] test state::tests::pending_autowrap_at_bottom_records_scroll_on_next_printable ... ok
[INFO] [stdout] test state::tests::line_feed_at_bottom_records_scroll_and_moves_prompt_row ... ok
[INFO] [stdout] test state::tests::interleaved_enqueue_claims_in_fifo_order ... ok
[INFO] [stdout] test state::tests::printing_last_column_defers_autowrap_until_next_printable ... ok
[INFO] [stdout] test state::tests::check_and_set_legacy_osc7770_warned_is_one_shot ... ok
[INFO] [stdout] test state::tests::restore_cursor_clears_pending_wrap_when_resize_invalidates_last_column ... ok
[INFO] [stdout] test state::tests::cpr_queue_empty_by_default ... ok
[INFO] [stdout] test state::tests::rollback_locates_entry_after_earlier_pops ... ok
[INFO] [stdout] test state::tests::restore_cursor_restores_autowrap_and_pending_wrap ... ok
[INFO] [stdout] test state::tests::restore_cursor_clamps_after_resize ... ok
[INFO] [stdout] test state::tests::tab_saturating_at_u16_max ... ok
[INFO] [stdout] test state::tests::tab_never_moves_backward ... ok
[INFO] [stdout] test state::tests::rollback_removes_matching_token ... ok
[INFO] [stdout] test state::tests::update_dimensions_clamps_zero ... ok
[INFO] [stdout] test state::tests::validate_cpr_boundary_values ... ok
[INFO] [stdout] test state::tests::rollback_returns_false_when_already_claimed ... ok
[INFO] [stdout] test state::tests::prune_stale_drops_zero_when_all_fresh ... ok
[INFO] [stdout] test state::tests::validate_cpr_accepts_valid_coordinates ... ok
[INFO] [stdout] test state::tests::validate_cpr_rejects_zero_coordinates ... ok
[INFO] [stdout] test state::tests::validate_cpr_rejects_out_of_bounds ... ok
[INFO] [stdout] test state::tests::zero_dimensions_clamped_to_one ... ok
[INFO] [stdout] test state::tests::prune_stale_drops_old_entries_only ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 138 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/osc7772_proptest.rs (/opt/rustwide/target/debug/deps/osc7772_proptest-3e4a6a46011772fb)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test osc7772_rejects_malformed_percent ... ok
[INFO] [stdout] test osc7772_rejects_invalid_utf8 ... ok
[INFO] [stdout] test osc7772_roundtrips_arbitrary_utf8 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.83s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gc_pty-9094857a2d18eca7)
[INFO] [stdout] 
[INFO] [stdout] running 186 tests
[INFO] [stdout] test feedback::tests::terminal_feedback_empty_only_is_empty ... ok
[INFO] [stdout] test feedback::tests::terminal_feedback_failed_only_is_error ... ok
[INFO] [stdout] test handler::tests::build_env_snapshot_empty_when_no_providers ... ok
[INFO] [stdout] test feedback::tests::terminal_feedback_all_loaded_is_idle ... ok
[INFO] [stdout] test feedback::tests::aggregate_loaded_empty_and_error ... ok
[INFO] [stdout] test dynamic_result::tests::dynamic_result_variants_carry_payloads ... ok
[INFO] [stdout] test feedback::tests::terminal_feedback_prefers_partial_error_with_loaded_results ... ok
[INFO] [stdout] test handler::tests::dynamic_ctx_capture_with_uses_current_word_true_captures_word ... ok
[INFO] [stdout] test handler::tests::dynamic_ctx_different_preceding_flag_is_stale ... ok
[INFO] [stdout] test handler::tests::dynamic_ctx_identical_context_is_not_stale ... ok
[INFO] [stdout] test handler::tests::dynamic_ctx_different_args_is_stale ... ok
[INFO] [stdout] test handler::tests::dynamic_ctx_spawned_word_changed_is_stale ... ok
[INFO] [stdout] test handler::tests::dynamic_ctx_no_spawned_word_prefix_extension_allowed ... ok
[INFO] [stdout] test handler::tests::dynamic_ctx_different_command_is_stale ... ok
[INFO] [stdout] test handler::tests::dynamic_ctx_different_word_index_is_stale ... ok
[INFO] [stdout] test handler::tests::dynamic_ctx_capture_with_uses_current_word_false_no_word ... ok
[INFO] [stdout] test dynamic_result::tests::provider_tag_display_is_stable ... ok
[INFO] [stdout] test handler::tests::dynamic_ctx_spawned_word_unchanged_is_not_stale ... ok
[INFO] [stdout] test config_watch::tests::test_build_popup_theme_valid ... ok
[INFO] [stdout] test handler::tests::build_env_snapshot_populated_when_providers_present ... ok
[INFO] [stdout] test handler::tests::merge_dedup_against_drops_text_duplicates_from_existing_pool ... ok
[INFO] [stdout] test handler::tests::merge_dedup_against_drops_duplicates_within_same_batch ... ok
[INFO] [stdout] test handler::tests::test_clear_expired_feedback_dismisses_on_expired_empty ... ok
[INFO] [stdout] test handler::tests::test_auto_trigger_false_allows_manual_trigger ... ok
[INFO] [stdout] test handler::tests::test_arrow_down_suppresses_debounce ... ok
[INFO] [stdout] test handler::tests::test_clear_expired_feedback_partial_error_with_suggestions_demotes_to_idle ... ok
[INFO] [stdout] test handler::tests::test_apply_block_result_uses_live_geometry_when_word_unchanged ... ok
[INFO] [stdout] test handler::tests::test_clear_expired_feedback_returns_false_when_idle ... ok
[INFO] [stdout] test handler::tests::test_clear_expired_feedback_returns_false_when_loading ... ok
[INFO] [stdout] test handler::tests::test_arrow_up_suppresses_debounce ... ok
[INFO] [stdout] test handler::tests::test_clear_expired_feedback_bordered_partial_error_paints_displaced_border_row ... ok
[INFO] [stdout] test handler::tests::test_clear_expired_feedback_returns_false_when_dismiss_disabled ... ok
[INFO] [stdout] test handler::tests::test_auto_trigger_false_suppresses_trigger_on_space ... ok
[INFO] [stdout] test handler::tests::test_auto_trigger_false_suppresses_trigger_on_all_auto_chars ... ok
[INFO] [stdout] test handler::tests::test_clear_expired_feedback_returns_false_when_not_yet_expired ... ok
[INFO] [stdout] test handler::tests::test_abort_dynamic_task_and_clear_ctx_clears_both_fields ... ok
[INFO] [stdout] test handler::tests::test_current_feedback_kind_surfaces_provider_when_enabled ... ok
[INFO] [stdout] test handler::tests::test_current_feedback_kind_partial_error_clamps_at_u8_max ... ok
[INFO] [stdout] test handler::tests::test_custom_keybinding_trigger ... ok
[INFO] [stdout] test handler::tests::test_current_feedback_kind_redacts_provider_when_disabled ... ok
[INFO] [stdout] test handler::tests::test_current_feedback_kind_multi_failed_falls_through_to_partial_error ... ok
[INFO] [stdout] test handler::tests::test_ctrl_space_triggers_immediately ... ok
[INFO] [stdout] test handler::tests::test_ctrl_slash_triggers_immediately ... ok
[INFO] [stdout] test handler::tests::test_custom_trigger_chars ... ok
[INFO] [stdout] test handler::tests::test_accept_suggestion_survives_poisoned_parser_mutex ... ok
[INFO] [stdout] test handler::tests::test_key_to_bytes_arrow_up ... ok
[INFO] [stdout] test handler::tests::test_key_to_bytes_ctrl ... ok
[INFO] [stdout] test handler::tests::test_key_to_bytes_end_round_trip ... ok
[INFO] [stdout] test handler::tests::test_key_to_bytes_home_round_trip ... ok
[INFO] [stdout] test handler::tests::test_key_to_bytes_page_down_round_trip ... ok
[INFO] [stdout] test handler::tests::test_key_to_bytes_page_up_round_trip ... ok
[INFO] [stdout] test handler::tests::test_key_to_bytes_printable ... ok
[INFO] [stdout] test handler::tests::test_key_to_bytes_raw ... ok
[INFO] [stdout] test handler::tests::test_accept_with_chaining_survives_poisoned_parser_mutex ... ok
[INFO] [stdout] test handler::tests::test_key_to_bytes_tab ... ok
[INFO] [stdout] test handler::tests::test_key_to_bytes_roundtrip ... ok
[INFO] [stdout] test handler::tests::test_keybindings_from_config_invalid_key ... ok
[INFO] [stdout] test handler::tests::test_keybindings_from_custom_config ... ok
[INFO] [stdout] test handler::tests::test_keybindings_from_default_config ... ok
[INFO] [stdout] test handler::tests::test_enter_no_selection_forwards_enter ... ok
[INFO] [stdout] test handler::tests::test_dismiss_clears_dynamic_task_and_rx ... ok
[INFO] [stdout] test handler::tests::test_end_when_visible_jumps_to_last ... ok
[INFO] [stdout] test handler::tests::test_invalidate_overlay_scroll_deficit_clears_cached_value ... ok
[INFO] [stdout] test handler::tests::test_display_dirty_terminal_output_bumps_epoch_without_owned_popup ... ok
[INFO] [stdout] test handler::tests::test_end_when_hidden_forwards_bytes ... ok
[INFO] [stdout] test handler::tests::test_page_down_intercepted_when_visible_returns_empty_bytes ... ok
[INFO] [stdout] test handler::tests::test_manual_trigger_clears_debounce_suppression ... ok
[INFO] [stdout] test handler::tests::test_hidden_terminal_scroll_does_not_create_overlay_scroll_deficit ... ok
[INFO] [stdout] test handler::tests::test_dismiss_clears_state ... ok
[INFO] [stdout] test handler::tests::test_handler_starts_not_visible ... ok
[INFO] [stdout] test handler::tests::test_parse_key_name_case_insensitive ... ok
[INFO] [stdout] test handler::tests::test_page_down_when_visible_advances_selection ... ok
[INFO] [stdout] test handler::tests::test_parse_key_name_all_supported ... ok
[INFO] [stdout] test handler::tests::test_end_uses_configured_height_when_bordered_popup_suppressed ... ok
[INFO] [stdout] test handler::tests::test_home_when_hidden_forwards_bytes ... ok
[INFO] [stdout] test handler::tests::test_parse_key_name_ctrl_letters ... ok
[INFO] [stdout] test handler::tests::test_parse_key_name_ctrl_multi_char_error ... ok
[INFO] [stdout] test handler::tests::test_parse_key_name_rejects_aliased_keys ... ok
[INFO] [stdout] test handler::tests::test_parse_key_name_unknown_errors ... ok
[INFO] [stdout] test handler::tests::test_parse_key_name_rejects_signal_keys ... ok
[INFO] [stdout] test handler::tests::test_parse_key_name_trims_whitespace ... ok
[INFO] [stdout] test handler::tests::test_page_down_when_hidden_forwards_bytes ... ok
[INFO] [stdout] test handler::tests::test_page_down_uses_configured_height_when_borderless_popup_suppressed ... ok
[INFO] [stdout] test handler::tests::test_end_uses_effective_popup_height_with_bordered_short_terminal ... ok
[INFO] [stdout] test handler::tests::test_page_down_then_accept_uses_new_selection ... ok
[INFO] [stdout] test handler::tests::test_should_not_trigger_on_alpha ... ok
[INFO] [stdout] test handler::tests::test_page_down_uses_effective_popup_height_on_short_terminal ... ok
[INFO] [stdout] test handler::tests::test_should_trigger_on_dash ... ok
[INFO] [stdout] test handler::tests::test_should_trigger_on_dot ... ok
[INFO] [stdout] test handler::tests::test_should_trigger_on_slash ... ok
[INFO] [stdout] test handler::tests::test_should_trigger_on_space ... ok
[INFO] [stdout] test handler::tests::test_home_when_visible_jumps_to_zero ... ok
[INFO] [stdout] test handler::tests::test_page_up_when_visible_retreats_selection ... ok
[INFO] [stdout] test handler::tests::test_pending_empty_count_accumulates_across_two_try_merge_dynamic_calls ... ok
[INFO] [stdout] test handler::tests::test_page_up_uses_effective_popup_height_on_short_terminal ... ok
[INFO] [stdout] test handler::tests::test_page_up_when_hidden_forwards_bytes ... ok
[INFO] [stdout] test handler::tests::test_render_at_bumps_output_epoch_for_proxy_stale_write_gate ... ok
[INFO] [stdout] test handler::tests::test_pending_failed_accumulates_across_two_try_merge_dynamic_calls ... ok
[INFO] [stdout] test handler::tests::test_printable_clears_debounce_suppression ... ok
[INFO] [stdout] test handler::tests::test_render_at_commits_layout_only_after_overlay_write_ack ... ok
[INFO] [stdout] test handler::tests::test_render_at_skips_old_clear_when_new_render_scrolls ... ok
[INFO] [stdout] test handler::tests::test_render_at_skips_old_clear_when_feedback_only_render_scrolls ... ok
[INFO] [stdout] test handler::tests::test_terminal_output_clears_feedback_only_layout_when_not_visible ... ok
[INFO] [stdout] test handler::tests::test_tab_accept_file_dismisses ... ok
[INFO] [stdout] test handler::tests::test_render_survives_poisoned_parser_mutex ... ok
[INFO] [stdout] test handler::tests::test_trigger_requested_on_space ... ok
[INFO] [stdout] test handler::tests::test_terminal_output_dismisses_owned_popup_before_shell_bytes ... ok
[INFO] [stdout] test handler::tests::test_tab_accept_directory_predicts_buffer ... ok
[INFO] [stdout] test handler::tests::test_tab_no_selection_forwards_tab ... ok
[INFO] [stdout] test handler::tests::test_split_page_up_sequence_is_buffered_until_visible_popup_can_intercept ... ok
[INFO] [stdout] test handler::tests::test_tab_accept_flag_ending_with_equals_no_space ... ok
[INFO] [stdout] test handler::tests::test_trigger_idempotent_when_buffer_unchanged ... ok
[INFO] [stdout] test handler::tests::test_try_merge_dynamic_disconnected_rerenders_to_clear_loading ... ok
[INFO] [stdout] test handler::tests::test_terminal_output_preserves_pending_trigger ... ok
[INFO] [stdout] test handler::tests::test_trigger_survives_poisoned_parser_mutex ... ok
[INFO] [stdout] test handler::tests::test_terminal_scroll_resets_overlay_scroll_deficit_when_hidden ... ok
[INFO] [stdout] test handler::tests::test_trigger_aborts_in_flight_generators ... ok
[INFO] [stdout] test handler::tests::test_trigger_not_requested_on_alpha ... ok
[INFO] [stdout] test handler::tests::test_try_merge_dynamic_empty_only_with_no_static_yields_empty ... ok
[INFO] [stdout] test handler::tests::test_try_merge_dynamic_keeps_open_receiver_for_later_batches ... ok
[INFO] [stdout] test handler::tests::test_try_merge_dynamic_error_only_disconnect_yields_error ... ok
[INFO] [stdout] test handler::tests::test_update_config_changes_max_visible ... ok
[INFO] [stdout] test handler::tests::test_try_merge_dynamic_empty_query_stable_tiebreak_by_text ... ok
[INFO] [stdout] test handler::tests::test_try_merge_dynamic_partial_error_with_static_present ... ok
[INFO] [stdout] test handler::tests::test_update_config_changes_theme ... ok
[INFO] [stdout] test input::tests::test_alt_key_passthrough ... ok
[INFO] [stdout] test input::tests::test_arrow_keys_csi ... ok
[INFO] [stdout] test input::tests::test_arrow_keys_ss3 ... ok
[INFO] [stdout] test input::tests::test_backspace ... ok
[INFO] [stdout] test input::tests::test_cpr_mixed_with_typing ... ok
[INFO] [stdout] test handler::tests::test_update_config_dismisses_popup_on_auto_trigger_disable ... ok
[INFO] [stdout] test input::tests::test_cpr_response_large_values ... ok
[INFO] [stdout] test input::tests::test_cpr_response_parsed ... ok
[INFO] [stdout] test input::tests::test_ctrl_mixed_with_printable ... ok
[INFO] [stdout] test input::tests::test_ctrl_slash ... ok
[INFO] [stdout] test input::tests::test_ctrl_space ... ok
[INFO] [stdout] test input::tests::test_empty_input ... ok
[INFO] [stdout] test input::tests::test_end_csi_letter ... ok
[INFO] [stdout] test input::tests::test_end_csi_tilde_synonym ... ok
[INFO] [stdout] test input::tests::test_end_ss3 ... ok
[INFO] [stdout] test input::tests::test_enter ... ok
[INFO] [stdout] test input::tests::test_home_csi_letter ... ok
[INFO] [stdout] test input::tests::test_home_csi_tilde_synonym ... ok
[INFO] [stdout] test input::tests::test_home_ss3 ... ok
[INFO] [stdout] test input::tests::test_mixed_input ... ok
[INFO] [stdout] test input::tests::test_page_down_csi_tilde ... ok
[INFO] [stdout] test input::tests::test_page_up_csi_tilde ... ok
[INFO] [stdout] test input::tests::test_paged_then_typed ... ok
[INFO] [stdout] test input::tests::test_printable_chars ... ok
[INFO] [stdout] test input::tests::test_standalone_escape ... ok
[INFO] [stdout] test input::tests::test_stateful_parser_buffers_split_page_up ... ok
[INFO] [stdout] test handler::tests::test_hidden_home_end_alternate_encodings_forward_verbatim ... ok
[INFO] [stdout] test input::tests::test_stateful_parser_buffers_split_ss3_home ... ok
[INFO] [stdout] test input::tests::test_stateful_parser_keeps_complete_prefix_before_split_sequence ... ok
[INFO] [stdout] test handler::tests::test_update_config_keeps_popup_when_auto_trigger_stays_true ... ok
[INFO] [stdout] test input::tests::test_tab ... ok
[INFO] [stdout] test input::tests::test_unknown_csi_passthrough ... ok
[INFO] [stdout] test proxy::tests::deferred_sync_reschedules_when_shell_cpr_in_flight ... ok
[INFO] [stdout] test proxy::tests::dispatch_with_empty_queue_returns_drop ... ok
[INFO] [stdout] test handler::tests::test_update_config_changes_keybindings ... ok
[INFO] [stdout] test proxy::tests::rollback_ours_after_shell_preserves_shell_dispatch ... ok
[INFO] [stdout] test proxy::tests::dispatch_with_shell_at_head_forwards ... ok
[INFO] [stdout] test proxy::tests::shell_cpr_arrives_while_our_cpr_pending ... ok
[INFO] [stdout] test proxy::tests::test_known_terminals_never_fall_back ... ok
[INFO] [stdout] test proxy::tests::test_unknown_runs_with_flag ... ok
[INFO] [stdout] test proxy::tests::test_unknown_falls_back_without_flag ... ok
[INFO] [stdout] test handler::tests::test_update_config_changes_trigger_chars ... ok
[INFO] [stdout] test handler::tests::test_update_config_clears_pending_trigger_even_when_not_visible ... ok
[INFO] [stdout] test input::tests::test_ctrl_letters ... ok
[INFO] [stdout] test proxy::tests::dispatch_with_ours_at_head_syncs ... ok
[INFO] [stdout] test handler::tests::test_update_config_sets_auto_trigger_false ... ok
[INFO] [stdout] test handler::tests::test_visible_backspace_clears_popup_before_forwarding ... ok
[INFO] [stdout] test handler::tests::test_try_merge_dynamic_empty_query_sorts_branches_before_history_and_files ... ok
[INFO] [stdout] test proxy::tests::write_overlay_if_current_preserves_newer_overlay_after_stale_render_race ... ok
[INFO] [stdout] test handler::tests::test_visible_home_end_csi_7_8_tilde_navigate ... ok
[INFO] [stdout] test proxy::tests::write_overlay_if_current_drops_stale_overlay_after_epoch_bump ... ok
[INFO] [stdout] test handler::tests::test_visible_printable_clears_popup_before_forwarding ... ok
[INFO] [stdout] test proxy::tests::write_overlay_if_current_lets_shell_cleanup_supersede_stale_teardown_cleanup ... ok
[INFO] [stdout] test proxy::tests::write_overlay_if_current_discards_owned_state_on_stale_write ... ok
[INFO] [stdout] test proxy::tests::wait_with_timeout_returns_exit_code_of_already_exited_child ... ok
[INFO] [stdout] test proxy::tests::wait_with_timeout_returns_before_deadline_for_live_child ... ok
[INFO] [stdout] test handler::tests::test_visible_end_variants_jump_to_last ... ok
[INFO] [stdout] test proxy::tests::wait_with_timeout_kills_child_that_ignores_sigterm ... ok
[INFO] [stdout] test handler::tests::test_visible_home_variants_jump_to_zero ... ok
[INFO] [stdout] test handler::tests::test_page_navigation_does_not_dismiss_popup ... ok
[INFO] [stdout] test handler::tests::test_trigger_static_with_async_reserves_indicator_row_in_cached_layout ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 186 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.79s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/async_timing.rs (/opt/rustwide/target/debug/deps/async_timing-564c3f75483b66ca)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test keystroke_cancel_rearms_notify_for_outer_loop ... ok
[INFO] [stdout] test dismiss_then_spawn_keeps_dynamic_rx_alive_when_visible_with_empty_sync ... ok
[INFO] [stdout] test block_result_keeps_receiver_when_more_batches_may_arrive ... ok
[INFO] [stdout] test fast_async_arrives_before_block_window ... ok
[INFO] [stdout] test stale_generation_drops_async_result ... ok
[INFO] [stdout] test fast_async_with_typed_query_refilters_pool ... ok
[INFO] [stdout] test stale_async_result_dropped_when_buffer_drifted ... ok
[INFO] [stdout] test prepare_trigger_returns_needs_block_when_branch_generator_pending ... ok
[INFO] [stdout] test prepare_trigger_returns_painted_when_block_ms_zero ... ok
[INFO] [stdout] test empty_async_result_clears_loading_state ... ok
[INFO] [stdout] test keystroke_during_wait_cancels_block ... ok
[INFO] [stderr]      Running tests/osc7772_zsh_roundtrip.rs (/opt/rustwide/target/debug/deps/osc7772_zsh_roundtrip-1d08b2b3d801e7bf)
[INFO] [stdout] test slow_async_falls_through_then_merges_on_arrival ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.36s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test osc7772_real_zsh_roundtrip ... ok
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gc_suggest-1d20b156e351bfb1)
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 576 tests
[INFO] [stdout] test alias::tests::alias_cache_invalidates_when_existing_omz_dropin_is_edited ... ok
[INFO] [stdout] test alias::tests::alias_store_clones_share_storage ... ok
[INFO] [stdout] test alias::tests::alias_store_starts_empty_then_fills ... ok
[INFO] [stdout] test alias::tests::alias_cache_roundtrip_and_invalidation ... ok
[INFO] [stdout] test alias::tests::dir_tree_fingerprint_walks_recursively_within_budget ... ok
[INFO] [stdout] test alias::tests::alias_cache_invalidates_when_new_source_appears ... ok
[INFO] [stdout] test alias::tests::test_parse_double_quoted ... ok
[INFO] [stdout] test alias::tests::test_parse_bash_aliases ... ok
[INFO] [stdout] test alias::tests::test_parse_double_quoted_with_inner_spaces ... ok
[INFO] [stdout] test alias::tests::save_alias_cache_leaves_no_stale_tmp_files ... ok
[INFO] [stdout] test alias::tests::save_alias_cache_refuses_pre_seeded_shared_tmp_symlink ... ok
[INFO] [stdout] test alias::tests::test_parse_empty_value_skipped ... ok
[INFO] [stdout] test alias::tests::test_parse_escaped_space ... ok
[INFO] [stdout] test alias::tests::test_parse_keeps_dollar_var_as_literal_token ... ok
[INFO] [stdout] test alias::tests::test_parse_quoted_value_with_padding_trimmed ... ok
[INFO] [stdout] test alias::tests::test_parse_no_equals_skipped ... ok
[INFO] [stdout] test alias::tests::test_parse_zsh_aliases ... ok
[INFO] [stdout] test alias::tests::test_parse_single_word_unchanged ... ok
[INFO] [stdout] test alias::tests::test_parse_complex_value_keeps_full_tokens ... ok
[INFO] [stdout] test alias::tests::test_parse_empty_quoted_value_skipped ... ok
[INFO] [stdout] test alias::tests::test_parse_empty_output ... ok
[INFO] [stdout] test alias::tests::alias_cache_skips_empty_result ... ok
[INFO] [stdout] test alias_expand::tests::expand_chained_aliases ... ok
[INFO] [stdout] test alias_expand::tests::expand_returns_borrowed_when_no_alias ... ok
[INFO] [stdout] test alias_expand::tests::expand_depth_cap_stops_at_max_hops ... ok
[INFO] [stdout] test alias_expand::tests::expand_returns_none_at_word_index_zero ... ok
[INFO] [stdout] test alias_expand::tests::expand_cycle_guard ... ok
[INFO] [stdout] test cache::tests::test_cache_different_argv ... ok
[INFO] [stdout] test cache::tests::test_cache_different_cwd ... ok
[INFO] [stdout] test alias::tests::alias_cache_tracks_every_file_the_fast_path_reads ... ok
[INFO] [stdout] test cache::tests::test_cache_miss ... ok
[INFO] [stdout] test cache::tests::test_cache_script_template_different_prev_token_produces_different_keys ... ok
[INFO] [stdout] test commands::tests::test_empty_at_arg_position ... ok
[INFO] [stdout] test alias_expand::tests::expand_single_word_alias ... ok
[INFO] [stdout] test alias::tests::alias_cache_rejects_old_format_version ... ok
[INFO] [stdout] test cache::tests::test_cache_expired ... ok
[INFO] [stdout] test alias::tests::alias_cache_invalidates_when_omz_custom_dir_changes ... ok
[INFO] [stdout] test commands::tests::test_provides_at_command_position ... ok
[INFO] [stdout] test context::tests::bare_single_dash_is_flag_prefix ... ok
[INFO] [stdout] test context::tests::command_position_takes_precedence ... ok
[INFO] [stdout] test alias::tests::test_parse_falls_back_on_unbalanced_quote ... ok
[INFO] [stdout] test context::tests::empty_current_word_without_spec_is_unspecced_arg ... ok
[INFO] [stdout] test context::tests::flag_prefix_short_and_long ... ok
[INFO] [stdout] test context::tests::flag_prefix_beats_spec_arg ... ok
[INFO] [stdout] test context::tests::path_prefix_variants ... ok
[INFO] [stdout] test context::tests::redirect_beats_path_prefix ... ok
[INFO] [stdout] test context::tests::spec_arg_when_spec_matched_and_no_other_signal ... ok
[INFO] [stdout] test context::tests::unspecced_arg_when_no_spec_match ... ok
[INFO] [stdout] test context::tests::path_prefix_beats_flag_prefix ... ok
[INFO] [stdout] test embedded::tests::atomic_write_cleans_up_temp_on_rename_error ... ok
[INFO] [stdout] test embedded::tests::embedded_dir_is_current_detects_missing_sentinel ... ok
[INFO] [stdout] test cache::tests::test_cache_sweep_drops_expired_on_oversize_insert ... ok
[INFO] [stdout] test context::tests::redirect_fires_with_plain_word ... ok
[INFO] [stdout] test context::tests::empty_current_word_with_spec_is_spec_arg ... ok
[INFO] [stdout] test embedded::tests::atomic_write_refuses_pre_seeded_temp_symlink ... ok
[INFO] [stdout] test embedded::tests::embedded_specs_slice_is_non_empty ... ok
[INFO] [stdout] test embedded::tests::materialize_embedded_specs_at_refuses_symlinked_cache_dir ... ok
[INFO] [stdout] test alias_expand::tests::expand_multi_word_alias ... ok
[INFO] [stdout] test cache::tests::test_cache_hit ... ok
[INFO] [stdout] test alias::tests::alias_cache_invalidates_on_same_second_subsecond_edit ... ok
[INFO] [stdout] test engine::sync_result_tests::has_pending_high_priority_false_when_no_generators ... ok
[INFO] [stdout] test engine::sync_result_tests::has_pending_high_priority_false_when_script_pending_but_sync_outranks ... ok
[INFO] [stdout] test engine::sync_result_tests::has_pending_high_priority_false_when_sync_already_outranks_git ... ok
[INFO] [stdout] test embedded::tests::write_embedded_specs_rechecks_symlink_after_create_dir_all ... ok
[INFO] [stdout] test engine::sync_result_tests::has_pending_high_priority_true_when_git_pending_and_flags_only_in_sync ... ok
[INFO] [stdout] test engine::sync_result_tests::has_pending_high_priority_true_when_provider_pending_and_flags_only_in_sync ... ok
[INFO] [stdout] test engine::sync_result_tests::has_pending_high_priority_true_when_git_pending_and_no_sync ... ok
[INFO] [stdout] test commands::tests::test_scan_path_does_not_panic ... ok
[INFO] [stdout] test commands::tests::test_commands_are_sorted ... ok
[INFO] [stdout] test engine::tests::static_suggestions_coexist_with_native_generators ... ok
[INFO] [stdout] test commands::tests::test_no_duplicates ... ok
[INFO] [stdout] test engine::tests::static_suggestions_surface_past_double_dash ... ok
[INFO] [stdout] test alias::tests::concurrent_save_alias_cache_does_not_collide ... ok
[INFO] [stdout] test engine::sync_result_tests::has_pending_high_priority_true_when_script_pending_and_flags_only_in_sync ... ok
[INFO] [stdout] test alias::tests::alias_cache_invalidates_when_zsh_aliases_edited ... ok
[INFO] [stdout] test cache::tests::test_cache_lru_access_prevents_eviction ... ok
[INFO] [stdout] test cache::tests::test_cache_sweep_lru_drops_oldest_when_no_expired ... ok
[INFO] [stdout] test embedded::tests::write_embedded_specs_writes_all_files_and_sentinel ... ok
[INFO] [stdout] test embedded::tests::embedded_dir_is_current_detects_stale_sentinel ... ok
[INFO] [stdout] test embedded::tests::embedded_dir_is_current_rejects_unexpected_json_file ... ok
[INFO] [stdout] test embedded::tests::embedded_dir_is_current_rejects_missing_expected_file ... ok
[INFO] [stdout] test embedded::tests::embedded_dir_is_current_detects_match ... ok
[INFO] [stdout] test embedded::tests::write_embedded_specs_does_not_follow_destination_symlink ... ok
[INFO] [stderr] error: test failed, to rerun pass `-p gc-suggest --lib`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/gc_suggest-1d20b156e351bfb1` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "73a0c2ad4922ecb45dd85c1b14695aa47c6496a197f340f5bcd90b306557525c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "73a0c2ad4922ecb45dd85c1b14695aa47c6496a197f340f5bcd90b306557525c", kill_on_drop: false }`
[INFO] [stdout] 73a0c2ad4922ecb45dd85c1b14695aa47c6496a197f340f5bcd90b306557525c
